package day0712;

public class Test1 {
    public static void main(String[] args) {
        Father  f=new Father();
        Animal a=f.buyPet();
        System.out.println(a);
    }
}


class Father{
    //父类方法返回的是Animal类型
    public Animal buyPet(){
        Animal a=new Animal();
        return a;
    }
}


class Child extends  Father{
    //购买宠物
    //重写父类的buyPet()方法 : 重写一遍
    //方法覆盖时返回值类型如果是引用类型:　　
    //    子类方法的返回值类型可以和父类相同，或者是父类方法返回值类型的子类型
    public Cat buyPet(){
        Cat  c=new Cat();
        return c;
    }
}





class Animal{}
class Cat  extends   Animal{}